package com.cheng.service.FaceService;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.cheng.pojo.ClassRecord;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.stereotype.Service;

import java.text.ParseException;
import java.util.HashMap;

@Service
public interface TeacherService {
    /**
     * 老师创建班集体操作
     * */
    String  addClass(HashMap<String,String> classInfo);

    /**
     *老师开启签到功能操作
     * */
    JSONObject startSignIn(String cid, String type);

    /**
     * 老师通过cid得到这门课程的签到次数和签到记录
     * */
    JSONObject queryByCidSignIn(String cid) throws ParseException;

    /**
     * 老师通过cid和number查询班级的某一次具体信息
     * */
    JSONObject queryClassDetailSignInfo(String cid,String number);
    /**
     * 老师进入首页查看是否存在未处理的签到信息
     * */
    JSONObject checkLeaveState(String openId);
    /**
     *更新学生的修改状态
     * */
    void updateLeaveState(HashMap<String,String> leaveInfo, String cid);
    /**
     * 获得教师创建的班级
     * */
    JSONObject getTeacherCreateClass(String openId);
    /**
     * 得到签到记录的具体信息
     * **/
    JSONObject getUserSignInfo(String cid);
    /**
     * 导出一次签到数据
     * */
    Workbook exportSignInList(String cid,String number);
    /**
     * 导出全部签到数据
     * */
    Workbook exportSignInListAllClass(String cid);

    JSONObject getClassInfo(String cid);

    /**
     * 校验教师编号是否注册
     * */
    boolean checkTeacher(String tid);

    /**
     * 获得用户的个人信息
     * */
    JSONObject getUserInfo(String openId);

    /**
     * 修改个人信息
     * */
    boolean updateUserInfo(String name,String openId);

    /**
     * 获得班级的所有成员
     */
    JSONArray getClassStudent(String cid);

    /**
     * 获得分页的数据
     * */
    JSONObject getPageClassStudent(JSONObject info,int page);

    JSONObject getLeaveList(String cid,String openId) throws ParseException;
}
